.NET Framework Class Library |
TaskFactory..::.ContinueWhenAny<(Of <(TAntecedentResult>)>) Method (array<Task<(Of <(TAntecedentResult>)>)>[]()[], Action<(Of <(Task<(Of <(TAntecedentResult>)>)>)>), CancellationToken, TaskContinuationOptions, TaskScheduler) |
TaskFactory Class See Also Send Feedback |
Creates a continuation Task
that will be started upon the completion of any Task in the provided set.
Namespace:
System.Threading.Tasks
Assembly:
System.Threading (in System.Threading.dll)
Syntax
Visual Basic (Declaration) |
---|
Public Function ContinueWhenAny(Of TAntecedentResult) ( _ tasks As Task(Of TAntecedentResult)(), _ continuationAction As Action(Of Task(Of TAntecedentResult)), _ cancellationToken As CancellationToken, _ continuationOptions As TaskContinuationOptions, _ scheduler As TaskScheduler _ ) As Task |
C# |
---|
public Task ContinueWhenAny<TAntecedentResult>( Task<TAntecedentResult>[] tasks, Action<Task<TAntecedentResult>> continuationAction, CancellationToken cancellationToken, TaskContinuationOptions continuationOptions, TaskScheduler scheduler ) |
Parameters
- tasks
- Type: array<
System.Threading.Tasks..::.Task<(Of <(TAntecedentResult>)>)
>[]()[]
The array of tasks from which to continue when one task completes.
- continuationAction
- Type: System..::.Action<(Of <(Task<(Of <(TAntecedentResult>)>)>)>)
The action delegate to execute when one task in the tasks array completes.
- cancellationToken
- Type: System.Threading..::.CancellationToken
The CancellationToken that will be assigned to the new continuation task.
- continuationOptions
- Type: System.Threading.Tasks..::.TaskContinuationOptions
The TaskContinuationOptions value that controls the behavior of the created continuation Task.
- scheduler
- Type: System.Threading.Tasks..::.TaskScheduler
The TaskScheduler that is used to schedule the created continuation Task<(Of <(TResult>)>).
Type Parameters
- TAntecedentResult
- The type of the result of the antecedent tasks.
Return Value
The new continuation Task.Remarks
The NotOn* and OnlyOn* TaskContinuationOptions,
which constrain for which TaskStatus states a continuation
will be executed, are illegal with ContinueWhenAny.
Exceptions
Exception | Condition |
---|---|
System..::.ArgumentNullException | The exception that is thrown when the tasks array is null. |
System..::.ArgumentNullException | The exception that is thrown when the continuationAction argument is null. |
System..::.ArgumentNullException | The exception that is thrown when the scheduler argument is null. |
System..::.ArgumentException | The exception that is thrown when the tasks array contains a null value. |
System..::.ArgumentException | The exception that is thrown when the tasks array is empty. |
System..::.ArgumentOutOfRangeException | The exception that is thrown when the continuationOptions argument specifies an invalid TaskContinuationOptions value. |
System..::.ObjectDisposedException | The exception that is thrown when one of the elements in the tasks array has been disposed. |
System..::.ObjectDisposedException | The provided CancellationToken has already been disposed. |